// entity实体：跟数据库中的表意义映射，在做数据库的定义
// 将此对象跟数据库形成实际映射关系是TypeORM提供的
import { Column, Entity, PrimaryGeneratedColumn, Unique } from 'typeorm';

// admin_menu 是数据库中的实际表名
@Entity('menu')
export class Menu {
  @PrimaryGeneratedColumn() // primary表示是主键  generated表示是自增的
  id: number;

  @Column() // 表示是一个列 如果数据库名称跟此处定义的名称不一样，要在Column()中进行定义
  @Unique(['name']) // 表示是唯一键，不能重复
  name: string;

  @Column() // 表示是一个列 如果数据库名称跟此处定义的名称不一样，要在Column()中进行定义
  path: string;

  @Column()
  redirect: string;

  @Column()
  meta: string;

  @Column()
  pid: string; // parentId：父菜单的id

  @Column({ default: 1 })
  active: number; // 表达当前菜单是否可用 1：可用 0：不可用
}
